使用Travis CI来自动部署你的Hexo博客

使用Travis CI来自动部署你的Hexo博客

简介

之前使用博客都需要手动调用hexo generate来生成静态的html,然后再通过git提交到github,现在,使用Travis CI就可以进行自动部署,仅仅需要将md文件提交给git, 其他就交给Travis CI就行了,剩下的时间就可以找女朋友去了!棒棒哒!

Travis CI

Travis CI 是目前新兴的开源持续集成构建项目,它与jenkins,GO的很明显的特别在于采用yaml格式,简洁清新独树一帜。目前大多数的github项目都已经移入到Travis CI的构建队列中,据说Travis CI每天运行超过4000次完整构建。

开始

  1. 登陆Travis CI

  2. 关联我们在github的项目

  3. 在我们项目的更目录下增加.travis.yml文件

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    language: node_js # 语言
    node_js:
    - "7" # nodejs 版本
    script:
    - hexo generate # 执行的脚本命令
    install:
    - npm install # 安装命令
    before_install:
    - "npm install -g hexo-cli" # 安装前执行
    after_install:
    after_script: # 执行脚本命令后钩子
    - cd ./public
    - git init
    - git config user.name "流水"
    - git config user.email "774206981@qq.com"
    - git add .
    - git commit -m "更新文章"
    - git push --force --quiet "https://${GITHUB_TOKEN}@${GITHUB_REF}" master:master
    branches: # 影响分支
    only:
    - pages
    cache:
    directories:
    - "node_modules"

    注:1. GITHUB_TOKENGITHUB_REF是在Travis CI配置的环境变量

    注:2. 我们的开发分支在pages, 构建后的分支为主分支

Travis CI 配置

general

  • [x] Build only if .travis.yml is present
  • [x] Build branch updates
  • [x] Build pull request updates
  • [ ] Limit concurrent jobs

Environment Variables

可以增加一些环境变量 可以在yml文件中使用

大功告成

现在我们可以愉快的写博客了